// pages/editAddress/editAddress.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    address:"地区信息",
    uname:"",
    phone:"",
    detailAddress:"",
    code:""
  },

  // 选择地理位置
  bindDateChange(a){
    console.log(a)
    var address=a.detail.value;
    address=address.join("")
    this.setData({
      address:address
    })
  },
  
  // 获取用户名
  uname(a){
   this.setData({
     uname: a.detail.value.trim()
   })
  },
  // 获取电话
  phone(a){
    this.setData({
      phone: a.detail.value.trim()
    })
  },
  // 获取详细地址
  detailAddress(a){
    this.setData({
      detailAddress: a.detail.value.trim()
    })
  },
  // 获取邮政编码
  code(a){
    this.setData({
      code: a.detail.value.trim()
    })
  },

  // 保存地址
  add(){
    // 判断姓名是否为空
    if(this.data.uname.length==0){
      wx.showToast({
        icon:"none",
        title: '用户名不能为空',
      })
      return false;
    }
    // 验证手机号
    if(!(/^1[3,4,5,7,8][0-9]{9}$/.test(this.data.phone))){
      wx.showToast({
        icon:"none",
        title: '手机号格式错误',
      })
      return false;
    }
    // 验证地区信息
    if(this.data.address.length==4){
      wx.showToast({
        icon:"none",
        title: '请选择地址',
      })
      return false;
    }
    // 验证详细地址
    if(this.data.detailAddress.length==0){
      wx.showToast({
        icon:"none",
        title: '请填写详细地址',
      })
      return false;
    }
    // 邮政编码
    if(!(/^[0-9]\d{5}(?!\d)$/.test(this.data.code))){
      wx.showToast({
        icon:"none",
        title: '请填写邮政编码',
      })
      return false;
    }
    // 如果没有错误，把信息封装成对象，添加数组中
    var obj={
      uname: this.data.uname,
      phone: this.data.phone,
      address: this.data.address,
      detailAddress:this.data.detailAddress,
      code: this.data.code,
    }
    var address=wx.getStorageSync('address') || [];
    address.push(obj);
    // 把address数组存到storage中
    wx.setStorageSync('address', address);
    // 返回上一级页面
    wx.navigateBack({
      delta: 1,
    })


  },

  // 获取地图位置
  location(){
    // 获取用户授权信息
    wx.getSetting({
      success:(res)=>{
        // 判断用户是否授权了地理位置
        var auth=res.authSetting["scope.userLocation"]
        if(auth==true || auth==undefined){
          // 如果授权，访问地理位置
          wx.getLocation({
            type:"gcj02",
            success:(res)=>{
              // 如果成功，选择地理位置
              wx.chooseLocation({
                success:(res)=>{
                  this.setData({
                    address:res.address
                  })
                }
              })
            }
          })
        }else{//如果取消授权，打开授权页面
          wx.openSetting({
            success:(res)=>{
              wx.getLocation({
                type:"gcj02",
                success:(res)=>{
                  // 如果成功，选择地理位置
                  wx.chooseLocation({
                    success:(res)=>{
                      this.setData({
                        address:res.address
                      })
                    }
                  })
                }
              })
            }
          })
        }

      }
    })
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})